ONLY meant for PROTOTYPING & EXPERIMENTAL purposes!
NOT FOR PRODUCTION, NOT FOR BETA, NOT FOR ALPHA, ONLY for DEVELOPMENT!
USE to EXPERIMENT, LEARN, and PROTOTYPE!
This code in this repository originated from a fork of the linux-sgx repository, and
using git-filter-repo
only the file relevant to building IPP Crypto from source were
kept.
The goal of this repository is to better understand how to build IPP Crypto from source, such that it can be used to build the linux-sgx SDK from source instead of using the prebuilt binaries provided by Intel.
The ippcp library is built based on the Open Source project ipp-crypto:
In order to build your own IPP crypto, please follow below steps:
-
Download the prebuilt mitigation tools package
as.ld.objdump.gold.{ver}.tar.gz
from 01.org, extract the package and copy the tools to/usr/local/bin
. -
Read the ipp-crypto README to prepare your build environment.
-
Make sure ipp-crypto source code are prepared.
-
Build the target ippcp library with the prepared Makefile:
a. Build the target ippcp library with All-Loads-Mitigation:
$ make MITIGATION-CVE-2020-0551=LOAD
b. Build the target ippcp library with Branch-Mitigation:
$ make MITIGATION-CVE-2020-0551=CF
c. Build the target ippcp library with No-Mitigation:
$ make
The built-out static library libippcp.a
and header files will be copied into the right
place. Remember to make clean
before switching the build.
For IPP crypto reproducible build, please follow the instructions in reproducibility README.md to reproduce the prebuilt IPP crypto.